It is known to validate data included in extensible mark-up language (XML) documents using XML schema files that describe how the data in the XML document is structured. For example, in some systems, an XML document can be validated by checking the structure of the data included in the XML document against an XML schema file which is accessed by the system. The XML schema file can be accessed by the system by either resolving the location of the XML schema file (i.e., finding the XML schema file itself) or by using a “hint” provided with the XML document that may indicate where the XML schema can be found, such as on a server accessible via the Internet.
Resolving the XML schema file using the system itself can be complicated because the system may be implemented on any one of a multiplicity of platforms (such as Linux, Windows, Unix, etc.). Accordingly, conventional systems may need to provide a way of resolving the XML schema file for each of the platforms on which the systems can be implemented. For example, if an XML validating system were implemented on a Unix system, the XML schema file may be stored according to the Unix file system, which may be different from other file systems on which the XML validation system may be implemented (such as Linux or Windows). Accordingly, the XML validation system may employ different processes for resolving the location of the XML schema file for each of these file systems.
Alternatively, if the location of the XML schema file is resolved using the hint provided in the XML document, the system may search for the XML schema file at a location outside of the system (such as on a server located on the Internet). As such, the XML schema file resolved by the system is assumed to be valid, which may raise security and/or other concerns regarding the authenticity of the XML schema file (such as the ultimate source of the file). Validation of XML documents is also discussed, for example, in U.S. Pat. No. 6,317,742 to Nagaratnam et al., in U.S. Pat. No. 6,418,446 to Lection et al., and in U.S. patent application Ser. No. 20030093717 by Mason, the disclosures of which are incorporated herein by reference.